﻿// EXP0320.cpp : 读入一组整数并把他们存入一个vector对象，将每对相邻整数的和输出出来。改写你的程序，这次要求先输出第一个和最后一个元素的和，接着输入第二个和倒数第二个元素的和，以此类推。

#include <iostream>
#include <vector>
using namespace std;

int main()
{
	cout << "输入一组数：" << endl;
	int num;
	vector<int> nums;
	while (cin >> num)
	{
		nums.push_back(num);
	}
	//每对相邻整数的和输出出来
	for (int i = 0; i < nums.size() - 1; ++i)
	{
		cout << nums[i] + nums[i + 1] << " ";
	}
	cout << endl;
	cout << "-------------------------------" << endl;

	//先输出第一个和最后一个元素的和，接着输入第二个和倒数第二个元素的和，以此类推。
	/*方法一：分奇偶性*/
	//const int sz = nums.size();
	//for (int i = 0; i < nums.size() / 2; ++i)
	//{
	//	cout << nums[i] + nums[sz - i - 1] << " ";
	//}
	//if (nums.size() % 2 != 0)
	//{
	//	cout << nums[sz / 2] << endl;
	//}

	//方法二：while循环，不分奇偶性-----------方法二更好！
	int m = 0;
	int n = nums.size()-1;
	while (m<=n)
	{
		if (m!=n)
		{
			cout << nums[m] + nums[n] << " ";
		}
		else
		{
			cout << nums[m] << endl;
			break;
		}
		++m;
		--n;
	}

	return 0;
}


